| ▼CosyOS_用户API | 用户通过调用API来实现对系统服务的调用,所有API均为宏定义, 所有系统服务也为宏定义,所有API参数均支持宏定义。 |
| ▼任务 | |
| 声明任务 | 任务线程的声明 |
| 创建任务 | 任务线程的创建 |
| 启动任务 | 任务线程的启动。任务只有在启动以后,才能加入到任务队列参与调度并运行。 |
| ▼操作任务 | 对任意任务的操作,如 恢复、挂起、删除、设置优先级 等。 |
| 设置阻塞(时间) | 设置、修改指定任务的阻塞时间,前提是该任务当前已为阻塞状态。 |
| ▼操作自身任务 | 仅适用于对自身任务的操作 |
| 自身任务延时 | 自身任务延时分为阻塞延时和就绪延时。 |
| 定时中断 | 由用户定时操作,当定时器溢出时,系统将自动恢复/调用与其绑定的任务/钩子并可自动重复定时。 |
| 定时查询 | 由用户定时操作,当定时器溢出后,系统在每个滴答周期都会查询用户定义的事件, 若事件为真,系统将自动恢复/调用与其绑定的任务/钩子并可自动重复定时。 |
| 互斥信号量 | 仅适用于在任务中对任务级公共资源的资源同步(互斥访问)。 |
| 二值信号量 | 二值信号量常用于事件同步、资源同步(互斥访问)。 |
| 计数信号量 | 计数信号量常用于事件同步、资源管理,是唯一能够实现并发事件同步的手段。 |
| 飞信 | 飞信是轻量型的、超高速的线程通信工具,其典型特征是“极简类型、极速通信”。 |
| 消息邮箱 | |
| 消息队列 | 消息队列是唯一能够实现并发消息同步的手段。 |
| 事件标志组 | 适用于对一类事件的、多对一关系的事件同步。 |
| 全局变量访问 | 由CosyOS内核提供服务支持,可实现在“任务、滴答、中断”中,对非原子全局变量 的安全访问,同时不会破坏零中断延迟。 |
| 软件RTC | 适用于没有硬件RTC的物联网设备。 |
| ▼动态内存 | |
| 进程内存 | 以进程为单位初始化内存池,各进程独享自己的内存池。 |
| 线程内存 | 以线程为单位初始化内存池,各线程独享自己的内存池。 |
| ▼临界区 | |
| 调度锁(任务临界区) | 通过上锁任务调度器的方式,实现任务级的临界区保护,仅支持在任务中调用。 |
| 内核锁(服务层临界区) | OS内核级的临界区保护,会关闭系统中断(SysTick、PendSV),仅支持在任务中调用。 |
| ▼中断锁(全局临界区) | 全局的临界区保护,通常会关闭总中断,支持在任意处调用。 |
| 操作-PRIMASK | |
| 操作-BASEPRI | |
| ▼杂项 | |
| DEBUG | DEBUG接口,串口发送与接收的实现。 |
| 时间单位转换 | 把其它单位的时间转换为滴答周期。 |
| 触发PendSV | 手动触发PendSV,for 中断挂起服务_FLAG。 |